@echo off
echo ========================================
echo 微服务端到端测试启动脚本
echo ========================================

REM 检查Node.js是否安装
node --version >nul 2>&1
if errorlevel 1 (
    echo 错误: 未找到Node.js，请先安装Node.js
    pause
    exit /b 1
)

REM 检查Cypress是否安装
npx cypress --version >nul 2>&1
if errorlevel 1 (
    echo 正在安装Cypress...
    npm install cypress --save-dev
)

REM 检查微服务是否运行
echo 检查微服务状态...
curl -s http://localhost:8080/actuator/health >nul 2>&1
if errorlevel 1 (
    echo 警告: API网关可能未运行，请确保微服务已启动
    echo 建议运行: cd backend/microservices && docker-compose up -d
    pause
)

REM 设置环境变量
set CYPRESS_baseUrl=http://localhost:8080
set CYPRESS_video=false
set CYPRESS_screenshotOnRunFailure=true

echo 开始运行微服务端到端测试...

REM 运行端到端测试
npx cypress run --spec "cypress/e2e/microservices-e2e.cy.js" --reporter mochawesome

if errorlevel 1 (
    echo 端到端测试失败！
    pause
    exit /b 1
)

echo 端到端测试完成！

REM 运行性能测试（可选）
echo 是否运行性能测试？(y/n)
set /p run_performance=
if /i "%run_performance%"=="y" (
    echo 开始运行性能测试...
    npx cypress run --spec "cypress/e2e/microservices-performance.cy.js" --reporter mochawesome
)

echo 所有测试完成！
pause
